# coding=utf-8
# 本题为考试多行输入输出规范示例，无需提交，不计分。
import sys
import copy
import math

"""
现有数组A和B
对于数组B中的数b_i，问存不存在一个元祖（a_i,a_j),其中a_i和a_j
都是数组A中的数，而且i!=j,满足pow(a_i,a_j) = b_i。若存在，返回
(a_i,a_j),若不存在，返回(-1,-1).
"""


def getRes(fruits, num):
    for fruit in fruits:
        if fruit == 1:
            if num != 1:
                continue
            else:
                if len(fruits) == 1:
                    return [-1, -1]
                else:
                    for tmp_fruit in fruits:
                        if tmp_fruit != 1:
                            return [1, tmp_fruit]
        res = math.log(num, fruit)
        tmp_fruits = copy.deepcopy(fruits)
        tmp_fruits.remove(fruit)
        if res in tmp_fruits:
            del tmp_fruits
            return [fruit, res]
        del tmp_fruits
    return [-1, -1]


if __name__ == "__main__":
    # 读取第一行的n
    line = sys.stdin.readline().strip()
    n, m = list(map(int, line.split()))
    ans = []
    values = []
    for i in range(2):
        # 读取每一行
        line = sys.stdin.readline().strip()
        # 把每一行的数字分隔后转化成int列表
        value = list(map(float, line.split()))
        values.append(value)

    fruits = values[0]
    nums = values[1]
    for num in nums:
        ans.append(getRes(fruits, num))

    for every_ans in ans:
        print(int(every_ans[0]), end=" ")
        print(int(every_ans[1]), end="\n")
